

#ifndef __CE_3RDPERSONCAMERA_H__
#define __CE_3RDPERSONCAMERA_H__

#include <cegfx/ceexport.h>
#include <cegfx/cecamera.h>


class CE_GFX_API ce3rdPersonCamera : public ceCamera
{
private:
	float	distance;

	float angleH;
	float angleV;

	D3DXMATRIX matrix;

public:
	ce3rdPersonCamera (const iViewport* viewport = 0);

	void SetDistance (float distance);
	float GetDistance () const;

	void SetAngleH (float angleH);
	float GetAngleH () const;

	void SetAngleV (float angleV);
	float GetAngleV () const;

	void RotateH (float angle);
	void RotateV (float angle);
	void Move (float x, float y, float z);
	void Move (const D3DXVECTOR3& dir);

	virtual void Update ();

};


#endif /* ! __CE_3RDPERSONCAMERA_H__ */ 

